#pragma once

#include "Monkey.h"

// walking animation settings
#define BM_PATH "CircusCharlieSheet1.png"
#define BM_SRC_X 78
#define BM_SRC_Y 124
#define BM_SRC_W 17
#define BM_SRC_H 16
#define BM_SRC_OFFSET 3
#define BM_FRAMES 3
#define BM_WIDTH 38
#define BM_HEIGHT 42

// general animation settings
#define BM_ANIM_FPS 8
#define BM_ANIM_LOOP true
#define BM_ANIM_HORZ true

//Jump sprite
#define BMJ_SRC_X 139
#define BMJ_SRC_Y 124
#define BMJ_SRC_W 17
#define BMJ_SRC_H 16

// gameplay
#define BM_SPEED 200
#define GRAVITY 1000
#define JUMP_SPEED -500
#define JUMP_DIF 8
#define BM_COLLIDER_OFFSET 5

class Circus;

class BlueMonkey : public Monkey {
private:
	bool isJumping;
	float ySpeed;
	Circus *game;
	Sprite *jumpSprite;
	void JumpCheck();
public:
	BlueMonkey();
	BlueMonkey(int x, int y, Circus *circus);
	virtual ~BlueMonkey();
	void Update(float dt);
};